package com.itany.corejava.code08_常用类.string;

import java.util.Arrays;

/**
 * @author 石小俊
 * @version 1.0
 * @date 2023年03月15日 14:37
 */
public class Test04_与其他类型的转换 {
    public static void main(String[] args) {
        // 将一个字符串转换成char数组
        System.out.println("**************字符串转char数组**************");
        String s = "Hello World";
        char[] cs = s.toCharArray();
        System.out.println(Arrays.toString(cs));
        System.out.println("**************char数组转字符串**************");
        String s2 = new String(cs);
        System.out.println(s2);

        System.out.println("**************字符串转char数组**************");
        byte[] bytes = s.getBytes();
        System.out.println(Arrays.toString(bytes));
        System.out.println("**************byte数组转字符串**************");
        String s3 = new String(bytes);
        System.out.println(s3);

        System.out.println("**************字符串转int类型**************");
        // 如果需要转换的字符串中存在非数字(包含小数点)
        // 则抛出NumberFormatException异常
        // int i = Integer.parseInt("123.45");// 报错
        int i = Integer.parseInt("123");
        System.out.println(i);

        System.out.println("**************int类型转字符串**************");
        // 方式一:任意类型与字符串拼接都会自动转换成字符串类型
        String s4 = i + "";
        // 方式二:使用String 提供的静态方式String.valueOf() 用于将基本数据类型转换成字符串
        s4 = String.valueOf(i);
        System.out.println(s4);


        System.out.println("**************字符串转double类型**************");
        double d = Double.parseDouble("123.45");
        System.out.println(d);

        System.out.println("**************double类型转字符串**************");
        // 方式一
        String s5 = d + "";
        // 方式二
        s5 = String.valueOf(d);
        System.out.println(s5);
    }
}
